# 作者:侯征


name="hou \t zheng"

print(name.capitalize()) #首字母大写
print(name.count("h"))   #计算 h 出现的次数
print(name.center(50,"-")) #打印50个字符串,name放中间,其他用 -
#结果  --------------------hou zheng---------------------
print(name.endswith("ng"))   #判断是否以ng结尾
print(name.expandtabs(tabsize=30))   #在字符串中下上\t tab键,将此tab键转换为30个空格
# 结果: hou                            zheng
print(name.find("hou"))  #获得hou在字符串里开始的下标
print(name[name.find("hou"):3])  #可利用此方法切片
str="my name is {name},i am {year} old"
print(str.format(name="houzheng",year=23)) #根据括号内的对应内容,对字符串对应数据进行转换
print(str.format_map( {"name":"yaozhen","year":22} )) #根据字典进行转换
print("AA123".isalnum()) #判断是否是阿拉伯数字或者阿拉伯字符
print("ab2".isalpha()) #判断是否是纯英文字符
print("123".isdecimal()) #判断是否是十进制数
print("456".isdigit())  #判断是否是整数
print("ab_123".isidentifier())  #判断是不是一个合法的标识符
print("0123".isnumeric())  #判断字符串中是否只含有数字
print("My Name  Is".istitle())
print("   ".isspace()) #判断是否是空格
print("大扫除".isprintable())  #判断是否可以打印
print("Aa".isupper())  #判断是否全是大写
print(",".join(["1","2","3"]))  #将列表中每一个以 , 连接成一个字符串
#  结果:  1,2,3
print(name.ljust(50,"*"))  #打印50个字符,name放左边,不够*来补
#结果:  hou 	 zheng***************************************
print(name.rjust(50,"%"))  #打印50个字符,name放右边,不够%来补
print( 'HOU'.lower())   #变成小写
print( 'hou'.upper())   #变成大写
print( '\tAlex'.lstrip())   #去掉左边的转义符或者空格
print( 'Alex\n'.rstrip()  )   #去掉右边的转义符或者空格
print( '    Alex\n'.strip()  )  #去掉两边的转义符或者空格
p = str.maketrans("houzheng",'12345678')  # 前面和后面一一对应
print("hou zheng".translate(p) )  #将字符串中按照p中对应关系,全部替换
#结果:  523 45678
print('hou zheng'.replace('h','H',2))   #将h变成H  2表示替换几个
print('hou zheng'.rfind('h'))  #找到最右边那个值的下标
print('1+2+3+4'.split('+'))   #按照+将字符串分成列表
print('1+2\n+3+4'.splitlines())   #分成列表
print('Alex Li'.swapcase())   #大小写转换
print('lex li'.title())   #转换成title,即首字母大写
print('lex li'.zfill(50)) #打印50个,不够用0填充